java 单划线"/" 算术???????

来源:百度知道 编辑:UC知道 时间:2024/05/17 11:55:57
int x=15;
int y=x+5/x+3; // 20/18 ?
System.out.println(y) ;
为什么输出 18 ??
那"/" 是什么意思???除?

因为定义的y是int型的,就是整数型啊(就是只取整数部分),5/x就可以忽略了,因为相除之后的结果整数部分为零啊。所以y就是18啊

int x=15;
先定义一个int型变量赋予初始值15,
int y=x+5/x+3;
根据java的运算符优先级
先算5/x(即求模,5/15=0...5,取的就是那个商0)
然后再从左往右做加法x+5/x+3=15+0+3=18;
不如果想求(x+5)/(x+3)就用括号括起来,
得到1;

整除
5/15 结果是0吧